Method to search a task-based web interaction

ABSTRACT

Presented is a method, system and computer readable product to search a task-based web interaction. A task-based web interaction search query is provided to a search engine. The search results are classified into a set of information parameters. The information parameters are compared against a repository containing multiple sets of information parameters. Upon identification of a corresponding set of information parameters, a task-based web interaction associated with the identified set of information parameters is presented.

BACKGROUND

The World Wide Web (WWW) has revolutionized the way people search forinformation. With increased affordability of computer and mobiledevices, and improved network connectivity, the Internet has emerged asthe preferred medium for people to find relevant and useful information.The emergence of a search engine has made this task a lot easier. Atypical web search engine allows a user to provide one or more searchterms through a browser based interface. It then searches the Web toretrieve a list of items related to the specified search terms. Theretrieved items could be documents, images, videos, web links, etc.

Recognizing the continuous need of a user (and potentially billions ofusers), a number of companies have started offering web based searchover the Internet. Google, Yahoo and Bing (from Microsoft) are some ofthe popular search engines that are around today. Increased competitionamongst search service providers have resulted in various improvementsover the algorithms behind the search engine technology. However, mostof the search engines still concentrate on returning documents or webpages which are most relevant to the search key words. There aresituations or user needs where these results may not be very helpful toan end user.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the solution, embodiments will now bedescribed, purely by way of example, with reference to the accompanyingdrawings, in which:

FIG. 1 shows a flow chart of a computer-implemented method of searchinga task-based web interaction according to an embodiment.

FIG. 2 shows a block diagram of a system according to an embodiment.

DETAILED DESCRIPTION OF THE INVENTION

Search engines have come a long way over the last decade or so in termsof both technological developments and the business models they arebased upon. From simply providing directory listings of files located onFTP (File Transfer Protocol) sites, to present day crawling, indexing,and searching methodology typically used these days, the search engineshave shown significant improvements in the type of results that may beoffered to a user. A user has access to thousands of information items,from simple text documents to high definition videos, by simplyproviding a few search terms to a search engine.

While a search engine may be able to provide millions of web items, in amatter of few seconds, it is the relevance and usefulness of the searchresults that is valued by a user. As mentioned earlier, most searchengines still concentrate on returning static documents or web pagesbased on search terms. There are situations or user needs where theseresults may not be very helpful to an end user. One such user need is toaccomplish a task over the Web. For example, a user may wish to buy amovie ticket over the internet. In the present scenario, a simple searchquery comprising search words, for example, “buy”, “movie” and “ticket”,over the Web, would probably result in search results comprising websites offering online movie ticket booking, movie ticket prices,multiplex offerings and movie timings, etc. To book a movie ticket,based on such types of search results, a user would first need to selecta movie ticket booking web site, select a movie, select a show time ofthe movie, provide number of tickets required, delivery address of theuser, payment details, and so on so forth. Basically, a user would needto go through a number of steps to complete his/her transaction. Also,the process would need to be repeated again in the future for anothermovie. Furthermore, a user has no mechanism to share the entiretask-based interaction (series of steps involved) with another user in asimple and convenient manner.

A widget provides a mechanism to a user to accomplish a function bypackaging the steps required to complete the function into a single unitor entity. By simply invoking a single entity (widget), a user is ableto accomplish the function detailed therein. A widget providing weatherinformation is one example. Another could be a stock widget, which mayenable a user to obtain the current price of a predefined stock andexecute a trade based on a predefined price set by a user.

A tasklet represents a mechanism for creating a task-based userinteraction pattern. It is used to capture and represent a user'spreferred way of accomplishing a task. Instead of executing a series ofsteps to accomplish a task, the tasklets enables a user to capture theuser's flow over a set of web pages as an entity. For example, in theonline movie ticket booking scenario mentioned above, a tasklet may becreated that automates the task of accessing a user's movie bookingsite, and given the choice of a movie, automates the selection of apredefined show time, delivery address of the user and payment details.A tasklet can be reused in future and shared as well.

Broadly speaking, a task-based web interaction characterizes a pluralityof actions that are performed over the web to accomplish a task. Bothwidgets and tasklets represent task-based web interaction. Tasklets havebeen described in detail, in the applicant's patent application no.PCT/IN2009/000327, which is incorporated by reference herein.

Embodiments of the present solution provide a method, system andcomputer executable code for searching a task-based web interaction.

FIG. 1 shows a flow chart of a computer-implemented method of searchinga task-based web interaction according to an embodiment.

The method operates at two levels. The first level involves building asearchable repository of task-based interactions and the second levelentails searching the repository for task-based interactions.

Building a Searchable Repository of Task-Based Interactions

As mentioned above, a task-based interaction, tasklet, packages thesequence of web interactions needed to perform a task on multiplewebpages with individual URLs. In step 112, an author 110 defines atask-based web interaction as a series of web interactions. As mentionedabove, a task-based web interaction characterizes a plurality of actionsthat are performed over the web to accomplish a task. Both widgets andtasklets represent task-based web interaction. Tasklets have beendescribed in detail, in the applicant's patent application no.PCT/IN2009/000327.

In step 114, the author 110 extracts at least one uniform resourcelocator (URL) from a task-based web interaction. A task-based webinteraction typically involves multiple steps, with each step involvingat least one uniform resource locator (URL). An author may extract theuniform resource locators of all the steps involved. To illustrate, incontext of the online movie ticket booking scenario mentioned earlier,an author may extract uniform resource locator(s) for each of thevarious steps involved, such as, the URL for the movie booking site, theURL for selecting a movie, the URL for selecting a show time, the URLfor providing delivery address of a user, the URL for payment details,etc. Basically, the author obtains the uniform resource locators for thecomplete task flow on the web.

In step 116, the author 110 provides at least one uniform resourcelocator as a search query to a search engine. Since a web-interactiontypically involves accessing more that one uniform resource locator overthe web, an author usually end up extracting multiple uniform resourcelocators from the process. In this step, the author selects a uniformresource locator (from one of the URLs extracted earlier) and providesit as a search query to a search engine. The author may repeat this stepfor all extracted uniform resource locators separately or all the URLsmay be searched together as a unit. To illustrate it in the context ofthe online movie ticket booking scenario, an author may provide the URLfor the movie booking site to a search engine in the first instance, theURL for selecting a movie in the second instance, and the rest of theuniform resource locators in subsequent separate instances. The authormay also search all the extracted URLs as a unit.

In step 118, the search results for a uniform resource locator(s)provided in step 116 is/are obtained from the search engine.

In step 120, the search results obtained in step 118 are classified intoa set of information parameters. In a typical scenario, a search engineusually provides a variety of search results. For example, the searchengine may return a set of URLs, associated quicklinks (list of some ofthe most frequently requested pages) and a set of keywords related to asubmitted URL(s). The different categories of results (set of URLs,quicklinks, and key words) may be referred as information parameters. Toillustrate, in context of the online movie ticket booking scenario, thesearch results for a URL on a movie booking site may yield differentinformation parameters, such as, multiple URLs of various movie bookingsites (www.pvrmovies.com, www.adlabs.com, www.spicecinema.com);quicklinks (www.bookyourtickets.com, www.foxmovies.com) and a number ofkeywords, such as, “purchase movie ticket”, “new movie ticket”, “freemovie tickets”, etc.

In step 122, the resulting set of information parameters are associatedas meta data of the task-based web interaction of step 114. For example,if a search results provides information parameters, such as a set ofURLs and a set of key words, all of these would get mapped to thetask-based web interaction that provided at least one uniform resourcelocator (URL). In the movie ticket booking scenario, the search resultsfor a URL on a movie booking site, such as, multiple URLs of variousmovie booking sites (www.pvrmovies.com, www.adlabs.com,www.spicecinema.com) and keywords, “purchase movie ticket”, “new movieticket”, “free movie tickets”, would get mapped to the task-based webinteraction, which was that a user wanted to buy a movie ticket over theinternet.

Also, the association between a set of parameters and a task-based webinteraction may be unstructured (e.g. URLs and keywords serving as tagsfor the task-based web interaction) or it may be structured (e.g. agraphical or ontological representation of a task-based web interactioncontaining URLs it operates on, the name of the form fields that arerequired to be filled in etc.)

In step 124, the association or mapping between the set of informationparameters and the task-based web interaction is stored in a repository(database) 126. Therefore, the repository 126 would contain multiplesets of information parameters, wherein each set corresponds to atask-based web interaction. The repository 126 may be a local personalrepository (for example, on a users' computer system) 128, a socialnetwork repository 130, or a global repository 132.

A graphical user interface (GUI) may be used to upload task-based webinteractions and the associated sets of information parameters into therepository 126.

Searching a Repository for Task-Based Interactions

In step 142, a user 140 provides a task-based web interaction searchquery to a computing device. The computing device may be, but notlimited to, a desktop computer, a laptop computer, a computer server ora mobile device.

Further, a task-based web interaction search query may very well be asimple web search query. The proposed method does not require a user toexplicitly specify that he or she is searching for a task-based webinteraction. Although an option may be provided through a suitable userinterface, to specify that a user is explicitly searching for atask-based web interaction(s). In the context of online movie ticketbooking scenario, a user may wish to buy a movie ticket over theinternet. In this case, the user may provide a task-based search query(akin to a web based search query) comprising search words, “buy”,“movie” and “ticket”, and the like, to a search engine.

In step 144, the input query is sent to a search engine. The searchengine may be a publicly available search engine or a private searchengine.

In step 146, the search results for the task-based search query providedin step 142 are obtained from the search engine.

In step 148, the search results are classified into a set of informationparameters. Each set of information parameters relates to the task-basedweb interaction provided in the search query. For example, in the movieticket booking scenario, if the search results for a task-based searchquery provides multiple URLs of various movie booking sites and also setof related keywords, both of them are recognized as different types ofinformation parameters.

In step 150, the information parameters obtained in step 148 arecompared against a repository containing multiple sets of informationparameters. In an embodiment, the repository may be the one which wasused to store the association between task-based web interactions andvarious sets of information parameters by an author in step 124. Acomparison is made to identify at least one set of informationparameters that correspond (or map) to the information parametersobtained in step 148. Since each set of information parameterscorresponds to a task-based web interaction, the comparison enables theidentification of at least one at least one task-based web interactioncorresponding to the set of information parameters (of step 146.) Inother words, a task-based web interaction corresponding to thetask-based search query is identified. To illustrate, in the context ofa movie ticket booking scenario, the information parameters (URLs, keywords, quicklinks, etc) obtained for a task-based keyword search “buymovie ticket” would be searched against a repository, to identify acorresponding set of information parameters. Since each set ofinformation parameters corresponds to a task-based web interaction, theidentified set of information parameters would result in locating atask-based web interaction on buying a movie ticket.

In step 152, the at least one identified task-based web interaction ispresented to a user. In an embodiment, the task-based web interactionmay be presented on a display device, such as, a video display unit(VDU). The identified task-based web interactions may be presented inthe form of a ranking.

The presentation of an identified task-based web interaction also may bepersonalized with user parameters, such as, but not limited to, a user'sgeographical location, a user's past web interaction, etc. In anembodiment, a user's parameters may be used to automatically pre-fillfields in an online form. Pre-filling any fields in online forms whichmay be part of a task based interaction reduces a user's input. Toillustrate with the help of online movie booking example, a search for“buy movie ticket” may pre-fill the location of a user at a moviebooking site (say, www.pvrcinemas.com) thus reducing the input that auser may need to provide. In another scenario where a user may specify aparticular movie name (say, “Sholay”), a search for “buy Sholay tickets”may additionally pre-fill the movie name in the task based interaction.

Steps 142 to 148 may be performed vide a graphical user interface (GUI).The GUI may be a standalone computer application, a wrapper over websearch APIs (application programming interface) or as a browser plug-in.

The method steps described above may not necessarily be performed in thesequence as outlined above. The steps may be performed in any othersequence as well, with a step(s) being performed prior or later to othermethod steps.

FIG. 2 shows a block diagram of a system according to an embodiment.

The system 200 may be any kind of computing device, such as, but notlimited to, a personal computer, a desktop computer, a server computer,a laptop computer, a notebook computer, a network computer, a personaldigital assistant (PDA), a mobile device, a hand-held device, or anyother suitable computing device. Further, the system 200 may be astandalone system or a network system connected to other computingdevices through wired or wireless means.

The system 200 may include a processor 210, for executing softwareinstructions, a memory 220, an input device 240 and an output device250. These components may be coupled together through a system bus 260.

The processor 210 is arranged to obtain search results from a searchengine; classify search results into a set of information parameters,wherein the set of information parameters relates to the task-based webinteraction provided in the search query; compare the informationparameters against a repository containing multiple sets of informationparameters, wherein each set of information parameters corresponds to atask-based web interaction, and to identify at least one task-based webinteraction corresponding to the set of information parameters relatedto the task-based web interaction provided in the search query.

The memory 220 may include computer system memory such as, but notlimited to, SDRAM (Synchronous DRAM), DDR (Double Data Rate SDRAM),Rambus DRAM (RDRAM), Rambus RAM, etc. or storage memory media, such as,a floppy disk, a hard disk, a CD-ROM, a DVD, a pen drive, etc. Thememory 220 may be used for storing a repository 230. The repository maybe a user's personal repository, a social network repository or a webbased repository.

The input device 240 may include a mouse, a key pad, a touch pad orscreen, a voice recognizer, and the like. The input device 240 may beused to provide a task-based web interaction search query to a searchengine. The output device 250 may include a Virtual Display Unit (VDU),a printer, a scanner, and the like. The output device 250 may be used toidentify at least one task-based web interaction

It would be appreciated that the system components depicted in FIG. 2are for the purpose of illustration only and the actual components mayvary depending on the computing system and architecture deployed forimplementation of the present solution. The various components describedabove may be hosted on a single computing system or multiple computersystems, including servers, connected together through suitable means.

The embodiments described provide an efficient mechanism to integratetask-based interaction with web search thus making their discovery easyand contextually relevant. Automated association of keywords from theweb for tasklets (tas-based web interaction reduce workload of a taskletauthor and prevents authors from using ‘irrelevant but popular’ tags tomake their tasklets popular. The embodiments also help in reducing thenumber of steps required from a user to complete a task on the web.Also, the task-based interactions are personalized before beingpresented as search results—thus simplifying interaction.

It will be appreciated that the embodiments within the scope of thepresent solution may be implemented in the form of a computer programproduct including computer-executable instructions, such as programcode, which may be run on any suitable computing environment inconjunction with a suitable operating system, such as, MicrosoftWindows, Linux or UNIX operating system. Embodiments within the scope ofthe present solution may also include program products comprisingcomputer-readable media for carrying or having computer-executableinstructions or data structures stored thereon. Such computer-readablemedia can be any available media that can be accessed by a generalpurpose or special purpose computer. By way of example, suchcomputer-readable media can comprise RAM, ROM, EPROM, EEPROM, CD-ROM,magnetic disk storage or other storage devices, or any other mediumwhich can be used to carry or store desired program code in the form ofcomputer-executable instructions and which can be accessed by a generalpurpose or special purpose computer.

It should be noted that the above-described embodiment of the presentsolution is for the purpose of illustration only. Although the solutionhas been described in conjunction with a specific embodiment thereof,those skilled in the art will appreciate that numerous modifications arepossible without materially departing from the teachings and advantagesof the subject matter described herein. Other substitutions,modifications and changes may be made without departing from the spiritof the present solution.

1. A computer-implemented method of searching a task-based webinteraction, comprising: providing a task-based web interaction searchquery to a search engine; obtaining search results from the searchengine; classifying search results into a set of information parameters,wherein the set of information parameters relates to the task-based webinteraction provided in the search query; comparing the informationparameters against a repository containing multiple sets of informationparameters, wherein each set of information parameters corresponds to atask-based web interaction, to identify at least one task-based webinteraction corresponding to the set of information parameters relatedto the task-based web interaction provided in the search query; andpresenting the at least one identified task-based web interaction.
 2. Amethod according to claim 1, further comprising building a repositorycontaining multiple sets of information parameters, wherein building therepository containing multiple sets of information parameters comprises:extracting at least one uniform resource locator from a task-based webinteraction; providing the at least one uniform resource locator as asearch query to a search engine; obtaining search results from thesearch engine; classifying search results into a set of informationparameters; associating the set of information parameters with thetask-based web interaction; and storing the association between the setof information parameters and the task-based web interaction in therepository.
 3. A method according to claim 1, wherein the informationparameters includes one of the following: a related uniform resourcelocator, a quick link and/or a keyword.
 4. A method according to claim1, wherein the task-based web interaction represents a user'sinteraction with the web for performing a task.
 5. A method according toclaim 4, wherein the user's interaction with the web for performing atask includes at least one user action over the web.
 6. A methodaccording to claim 1, wherein presenting at least one identifiedtask-based web interaction includes personalizing the presentation withuser parameters.
 7. A method according to claim 6, wherein the userparameters includes one of the following: a user's geographical locationor a user's past web interaction.
 8. A method according to claim 1,wherein the repository includes at least one of the following: a user'spersonal repository, a social network's repository or a web basedrepository.
 9. A method of claim 1, wherein the at least one identifiedtask-based web interaction is presented in the form of a ranking.
 10. Amethod of claim 9, wherein the ranking is based on type of repositorywhereby sets of information parameters present in a user's personalrepository is given more weight age over sets of information parameterspresent in a web based repository.
 11. A computer program productcomprising computer readable means adapted to execute, when deployed ona computer system, the steps of: providing a task-based web interactionsearch query to a search engine; obtaining search results from thesearch engine; classifying search results into a set of informationparameters, wherein the set of information parameters relates to thetask-based web interaction provided in the search query; comparing theinformation parameters against a repository containing multiple sets ofinformation parameters, wherein each set of information parameterscorresponds to a task-based web interaction, to identify at least onetask-based web interaction corresponding to the set of informationparameters related to the task-based web interaction provided in thesearch query; and presenting the at least one identified task-based webinteraction.
 12. The computer program product according to claim 11,further comprising computer readable means adapted to execute the stepsof: building a repository containing multiple sets of informationparameters, wherein building the repository containing multiple sets ofinformation parameters comprises: extracting at least one uniformresource locator from a task-based web interaction; providing the atleast one uniform resource locator as a search query to a search engine;obtaining search results from the search engine; classifying searchresults into a set of information parameters; associating the set ofinformation parameters with the task-based web interaction; and storingthe association between the set of information parameters and thetask-based web interaction in the repository.
 13. The computer programproduct according to claim 11, wherein the information parametersincludes one of the following: a related uniform resource locator, aquick link and/or a keyword.
 14. A system for searching a task-based webinteraction, comprising: a memory for storing a repository; an inputsystem for providing a task-based web interaction search query to asearch engine; a processor for obtaining search results from the searchengine; classifying search results into a set of information parameters,wherein the set of information parameters relates to the task-based webinteraction provided in the search query; comparing the informationparameters against a repository containing multiple sets of informationparameters, wherein each set of information parameters corresponds to atask-based web interaction, to identify at least one task-based webinteraction corresponding to the set of information parameters relatedto the task-based web interaction provided in the search query; and adisplay for presenting the at least one identified task-based webinteraction.
 15. A system according to claim 14, wherein the repositoryincludes at least one of the following: a user's personal repository, asocial network's repository or a web based repository.